package com.hmall.model;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.util.Date;

@Table(name = "db_config")
public class DbConfig {
    @Id
    private Integer id;

    /**
     * 数据库描述
     */
    @Column(name = "db_describe")
    private String dbDescribe;

    /**
     * 数据库类型 
     */
    @Column(name = "db_type")
    private String dbType;

    /**
     * 数据库url
     */
    @Column(name = "db_url")
    private String dbUrl;

    /**
     * 用户名
     */
    @Column(name = "db_username")
    private String dbUsername;

    /**
     * 密码
     */
    @Column(name = "db_password")
    private String dbPassword;

    /**
     * 数据库驱动
     */
    @Column(name = "db_driver_name")
    private String dbDriverName;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 作者
     */
    private String author;

    /**
     * 输出路径
     */
    @Column(name = "output_file")
    private String outputFile;

    /**
     * ActvieRecord属性  0:是 1:否
     */
    @Column(name = "actvie_record")
    private Integer actvieRecord;

    /**
     * 是否使用二级缓存 0:是 1:否
     */
    @Column(name = "second_level_cache")
    private Integer secondLevelCache;

    /**
     * 是否生成kotlin代码
     */
    private Integer kotlin;

    /**
     * 是否生成表列
     */
    @Column(name = "generate_list")
    private Integer generateList;

    /**
     * 是否生成ResultMap
     */
    @Column(name = "result_map")
    private Integer resultMap;

    /**
     * 是否文件覆盖
     */
    private Integer cover;

    private String prefix;

    /**
     * 是否生成Lombok实体
     */
    private Integer lomback;

    /**
     * 是否为构建者模型
     */
    @Column(name = "builder_model")
    private Integer builderModel;

    /**
     * 是否生成字段常量
     */
    @Column(name = "field_constants")
    private Integer fieldConstants;

    /**
     * 父级包名
     */
    @Column(name = "parent_package_name")
    private String parentPackageName;

    /**
     * 控制器包名
     */
    @Column(name = "controller_package_name")
    private String controllerPackageName;

    /**
     * 实体包名
     */
    @Column(name = "entity_package_name")
    private String entityPackageName;

    /**
     * Mapper包名
     */
    @Column(name = "mapper_package_name")
    private String mapperPackageName;

    /**
     * xml包名
     */
    @Column(name = "xml_package_name")
    private String xmlPackageName;

    /**
     * @return id
     */
    public Integer getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * 获取数据库描述
     *
     * @return db_describe - 数据库描述
     */
    public String getDbDescribe() {
        return dbDescribe;
    }

    /**
     * 设置数据库描述
     *
     * @param dbDescribe 数据库描述
     */
    public void setDbDescribe(String dbDescribe) {
        this.dbDescribe = dbDescribe;
    }

    /**
     * 获取数据库类型 
     *
     * @return db_type - 数据库类型 
     */
    public String getDbType() {
        return dbType;
    }

    /**
     * 设置数据库类型 
     *
     * @param dbType 数据库类型 
     */
    public void setDbType(String dbType) {
        this.dbType = dbType;
    }

    /**
     * 获取数据库url
     *
     * @return db_url - 数据库url
     */
    public String getDbUrl() {
        return dbUrl;
    }

    /**
     * 设置数据库url
     *
     * @param dbUrl 数据库url
     */
    public void setDbUrl(String dbUrl) {
        this.dbUrl = dbUrl;
    }

    /**
     * 获取用户名
     *
     * @return db_username - 用户名
     */
    public String getDbUsername() {
        return dbUsername;
    }

    /**
     * 设置用户名
     *
     * @param dbUsername 用户名
     */
    public void setDbUsername(String dbUsername) {
        this.dbUsername = dbUsername;
    }

    /**
     * 获取密码
     *
     * @return db_password - 密码
     */
    public String getDbPassword() {
        return dbPassword;
    }

    /**
     * 设置密码
     *
     * @param dbPassword 密码
     */
    public void setDbPassword(String dbPassword) {
        this.dbPassword = dbPassword;
    }

    /**
     * 获取数据库驱动
     *
     * @return db_driver_name - 数据库驱动
     */
    public String getDbDriverName() {
        return dbDriverName;
    }

    /**
     * 设置数据库驱动
     *
     * @param dbDriverName 数据库驱动
     */
    public void setDbDriverName(String dbDriverName) {
        this.dbDriverName = dbDriverName;
    }

    /**
     * 获取创建时间
     *
     * @return create_time - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新时间
     *
     * @return update_time - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * 获取作者
     *
     * @return author - 作者
     */
    public String getAuthor() {
        return author;
    }

    /**
     * 设置作者
     *
     * @param author 作者
     */
    public void setAuthor(String author) {
        this.author = author;
    }

    /**
     * 获取输出路径
     *
     * @return output_file - 输出路径
     */
    public String getOutputFile() {
        return outputFile;
    }

    /**
     * 设置输出路径
     *
     * @param outputFile 输出路径
     */
    public void setOutputFile(String outputFile) {
        this.outputFile = outputFile;
    }

    /**
     * 获取ActvieRecord属性  0:是 1:否
     *
     * @return actvie_record - ActvieRecord属性  0:是 1:否
     */
    public Integer getActvieRecord() {
        return actvieRecord;
    }

    /**
     * 设置ActvieRecord属性  0:是 1:否
     *
     * @param actvieRecord ActvieRecord属性  0:是 1:否
     */
    public void setActvieRecord(Integer actvieRecord) {
        this.actvieRecord = actvieRecord;
    }

    /**
     * 获取是否使用二级缓存 0:是 1:否
     *
     * @return second_level_cache - 是否使用二级缓存 0:是 1:否
     */
    public Integer getSecondLevelCache() {
        return secondLevelCache;
    }

    /**
     * 设置是否使用二级缓存 0:是 1:否
     *
     * @param secondLevelCache 是否使用二级缓存 0:是 1:否
     */
    public void setSecondLevelCache(Integer secondLevelCache) {
        this.secondLevelCache = secondLevelCache;
    }

    /**
     * 获取是否生成kotlin代码
     *
     * @return kotlin - 是否生成kotlin代码
     */
    public Integer getKotlin() {
        return kotlin;
    }

    /**
     * 设置是否生成kotlin代码
     *
     * @param kotlin 是否生成kotlin代码
     */
    public void setKotlin(Integer kotlin) {
        this.kotlin = kotlin;
    }

    /**
     * 获取是否生成表列
     *
     * @return generate_list - 是否生成表列
     */
    public Integer getGenerateList() {
        return generateList;
    }

    /**
     * 设置是否生成表列
     *
     * @param generateList 是否生成表列
     */
    public void setGenerateList(Integer generateList) {
        this.generateList = generateList;
    }

    /**
     * 获取是否生成ResultMap
     *
     * @return result_map - 是否生成ResultMap
     */
    public Integer getResultMap() {
        return resultMap;
    }

    /**
     * 设置是否生成ResultMap
     *
     * @param resultMap 是否生成ResultMap
     */
    public void setResultMap(Integer resultMap) {
        this.resultMap = resultMap;
    }

    /**
     * 获取是否文件覆盖
     *
     * @return cover - 是否文件覆盖
     */
    public Integer getCover() {
        return cover;
    }

    /**
     * 设置是否文件覆盖
     *
     * @param cover 是否文件覆盖
     */
    public void setCover(Integer cover) {
        this.cover = cover;
    }

    /**
     * @return prefix
     */
    public String getPrefix() {
        return prefix;
    }

    /**
     * @param prefix
     */
    public void setPrefix(String prefix) {
        this.prefix = prefix;
    }

    /**
     * 获取是否生成Lombok实体
     *
     * @return lomback - 是否生成Lombok实体
     */
    public Integer getLomback() {
        return lomback;
    }

    /**
     * 设置是否生成Lombok实体
     *
     * @param lomback 是否生成Lombok实体
     */
    public void setLomback(Integer lomback) {
        this.lomback = lomback;
    }

    /**
     * 获取是否为构建者模型
     *
     * @return builder_model - 是否为构建者模型
     */
    public Integer getBuilderModel() {
        return builderModel;
    }

    /**
     * 设置是否为构建者模型
     *
     * @param builderModel 是否为构建者模型
     */
    public void setBuilderModel(Integer builderModel) {
        this.builderModel = builderModel;
    }

    /**
     * 获取是否生成字段常量
     *
     * @return field_constants - 是否生成字段常量
     */
    public Integer getFieldConstants() {
        return fieldConstants;
    }

    /**
     * 设置是否生成字段常量
     *
     * @param fieldConstants 是否生成字段常量
     */
    public void setFieldConstants(Integer fieldConstants) {
        this.fieldConstants = fieldConstants;
    }

    /**
     * 获取父级包名
     *
     * @return parent_package_name - 父级包名
     */
    public String getParentPackageName() {
        return parentPackageName;
    }

    /**
     * 设置父级包名
     *
     * @param parentPackageName 父级包名
     */
    public void setParentPackageName(String parentPackageName) {
        this.parentPackageName = parentPackageName;
    }

    /**
     * 获取控制器包名
     *
     * @return controller_package_name - 控制器包名
     */
    public String getControllerPackageName() {
        return controllerPackageName;
    }

    /**
     * 设置控制器包名
     *
     * @param controllerPackageName 控制器包名
     */
    public void setControllerPackageName(String controllerPackageName) {
        this.controllerPackageName = controllerPackageName;
    }

    /**
     * 获取实体包名
     *
     * @return entity_package_name - 实体包名
     */
    public String getEntityPackageName() {
        return entityPackageName;
    }

    /**
     * 设置实体包名
     *
     * @param entityPackageName 实体包名
     */
    public void setEntityPackageName(String entityPackageName) {
        this.entityPackageName = entityPackageName;
    }

    /**
     * 获取Mapper包名
     *
     * @return mapper_package_name - Mapper包名
     */
    public String getMapperPackageName() {
        return mapperPackageName;
    }

    /**
     * 设置Mapper包名
     *
     * @param mapperPackageName Mapper包名
     */
    public void setMapperPackageName(String mapperPackageName) {
        this.mapperPackageName = mapperPackageName;
    }

    /**
     * 获取xml包名
     *
     * @return xml_package_name - xml包名
     */
    public String getXmlPackageName() {
        return xmlPackageName;
    }

    /**
     * 设置xml包名
     *
     * @param xmlPackageName xml包名
     */
    public void setXmlPackageName(String xmlPackageName) {
        this.xmlPackageName = xmlPackageName;
    }
}